using SheLife.Domain.Entities;

namespace SheLife.Domain.Interfaces.Repositories
{
    /// <summary>
    /// 系统任务仓储接口
    /// </summary>
    public interface ISystemTaskRepository : IRepository<SystemTask>
    {
        Task<IEnumerable<SystemTask>> GetByStatusAsync(string status);
        Task<IEnumerable<SystemTask>> GetByTypeAsync(string type);
        Task<IEnumerable<SystemTask>> GetPendingTasksAsync();
        Task<IEnumerable<SystemTask>> GetRunningTasksAsync();
        Task<IEnumerable<SystemTask>> GetCompletedTasksAsync();
        Task<IEnumerable<SystemTask>> GetFailedTasksAsync();
    }
}